package com.sq.partner.manager.service;

import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletResponse;

import com.sq.partner.manager.mybatis.model.CoreDept;
import com.sq.partner.manager.mybatis.model.GatewayChannelInfo;
import com.sq.partner.manager.mybatis.model.GatewayManual;
import com.sq.partner.manager.mybatis.model.GatewayPolicy;
import com.sq.partner.manager.mybatis.model.GatewayUser;
import com.sq.partner.manager.mybatis.model.TreeDto;
import com.sq.partner.manager.util.Page;

public interface IGatewayProtocolPolicyListService {

	/**
	 * 查询传入机构集合及其子机构
	 */
	public List<CoreDept> queryPrivilegeBranch(String deptCodeStr) throws Exception; 
	/**
	 * 根据出单机构dept属性及parentDeptCode查询出单机构及其子机构
	 */
	public Page<CoreDept> queryDeptPageByDeptAndParentDeptCode(Page<CoreDept> page ,String parentDeptCode) throws Exception;
	/**
	 * 查询人险相关合作伙伴
	 */
	public Page<GatewayChannelInfo> queryChannelInfoPageOfLife(Page<GatewayChannelInfo> page)throws Exception;
	//合作伙伴验证
	public List<Map> queryChannelListOfProtocol(GatewayChannelInfo channelInfo,String flag)throws Exception;
	//条件分页查询车捷保保单 
	public Page<Map<String,Object>> queryProtocolPolicyPageByCriteria(Page page) throws Exception;
	//下载保单查询
	public List<Map<String,Object>> queryProtocolPolicyListByCriteria(Map<String,Object> map) throws Exception;
	//下载保单
	public void downloadProtocolPolicyFile(List<Map<String,Object>> protocolPolicyList,HttpServletResponse response) throws Exception;
	//根据保单号查询保单信息
	public Map<String,Object> queryProtocolById(String polno) throws Exception;
	//编辑保单
	public void saveUpProtocol(Map<String,Object> map) throws Exception;
	//查询保单号进行验证
	public List<String> queryPolno(String polnos) throws Exception;
	//批量更新实收状态
	public Map<String,Integer> batchUpdate(List<Map<String,Object>> lists) throws Exception;
}
